當我們在忠孝東路上,要知道所有忠孝東路(10.0.0.0/16
網段)有哪些人呢?這些人名(mac address
)要怎麼對應到地址(ip address
)呢?
假設現在有一個人名為N00B(00:11:22:33:44:55
),住在忠孝東路三段1號(10.0.3.1/16
)想要知道忠孝東路三段9號(10.0.3.9/16
)的鄰居叫什麼名字,這個時候他就會大喊(broadcast
):
誰住在忠孝東路三段9號!!
因為所有人都聽得到,因此住在忠孝東路三段9號的小美(33:55:33:22:66:77
)就會向N00B回應(unicast
):
是我
接著N00B會在他的arp table裡面寫上小美就住在忠孝東路三段9號,以後要跟小美聊天就直接去忠孝東路三段9號找他,直到N00B覺得是時候要在更新一次arp table裡面的對應關係時,會再問一次誰住在忠孝東路三段9號
阿如果沒人回,代表arp失敗
可憐哪
這裡要講到大學中電腦網路常常講到的arp欺騙,那啥叫欺騙,以下範例就是欺騙的過程
當N00B去問誰住在忠孝東路三段9號時,由於是用廣播的方式告訴整條路上的人,所以每個人都聽得到是誰在問。
小屁孩(FF:CC:DD:00:A5:B3
)住在忠孝東路三段87號,就説:
是我
是我
是我
是我
是我
是我
講很多次,結果蓋過小美說的次數,讓N00B的arp table記錄成小屁孩住在忠孝東路三段9號
當N00B想傳給小美,結果傳錯給小屁孩,這個時候小屁孩會偷看到N00B想對小美說的話,會有資安疑慮。
當網路裡面,突然發現arp table的MAC address突然改變,就代表: